package thread;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

/**
 * @author hubert
 * @date 2018/10/10
 * @description ThreadTest1
 */
public class ThreadTest1 {

	/**
	 * 创建一个定长线程池，可控制线程最大并发数，超出的线程会在队列中等待,如下列所示，一次执行3个线程，设置了休眠延后，由于模拟业务执行时间，任务执行完成后
	 * 在同时执行3个线程
	 * @param args
	 */
	public static void main(String[] args) {
		ExecutorService fixedThreadPool = Executors.newFixedThreadPool(3);
		for (int i = 0; i < 10; i++) {
			final int index = i;
			fixedThreadPool.execute(new Runnable() {

				@Override
				public void run() {
					try {
						System.out.println(index);
						Thread.sleep(2000);
					} catch (Exception e) {
						e.printStackTrace();
					}
				}
			});
			//System.out.println("---进入下一线程----");
		}
	}
}
